package com.security.demo.service;

import com.security.demo.dao.BtModuleDao;
import com.security.demo.entity.BtModule;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.List;

/**
 * @description:
 * @author: zhsong
 * @time: 2021/9/6 14:57
 */
@Service
public class BtModuleService {
    @Autowired
    BtModuleDao btModuleDao;

    //插入
    public int insertBtModule(String name,String operationName) throws Exception {
        BtModule btModule = new BtModule();
        btModule.setName(name);
        btModule.setOperationName(operationName);
        int res = btModuleDao.insertBtModule(btModule);
        if(res < 1){
            throw new Exception("插入失败");
        }
        return res;

    }
    //删除

    public int deleteBtModule(String name,String operationName) throws Exception {
        BtModule btModule = new BtModule();
        btModule.setName(name);
        btModule.setOperationName(operationName);

        int res = btModuleDao.deleteBtModule(btModule);
        if(res < 1){
            throw new Exception("删除失败");
        }
        return res;
    }


    //查询一个模块的所有操作
    public List<String> selectBtModule(String name) throws Exception{
        BtModule btModule = new BtModule();
        btModule.setName(name);
        List<BtModule> btModules = btModuleDao.searchBtModule(btModule);
        if(btModules == null){
            return null;
        }
        List<String> operations = new ArrayList<>();
        for (BtModule module : btModules) {
            operations.add(module.getOperationName());
        }
        return operations;
    }
}
